Cluster
Cluster chosen: 3 with (648985 rows)
Preload
Look at the splits
Table of 5000 saved rows (lowest absolute inflation value = 0.1001046 ):
- variable = Variable
- class = Split
- pct_bin = Percentage of samples included in the split
- good = Count of non-defect in the split
- bad = Count of defects in the split
- bad_rate = Relative count of defects in the split vs population
- inflation = Inflation rate of sample count on rates (thresholded)
- pct_good = Percentage of non-defect in the split
- pct_bad = Percentage of defect in the split
- odds = Odds ratio of the split
- woe = Weight of Evidence of the split
- miv = Information Value of the split
Characterstic Plots of Features (Unfacetted)



Characterstic Plots of Features (Facetted)






Characteristic Plots of Splits (Unfacetted)



Characteristic Plots of Splits (Facetted)






LS0tDQp0aXRsZTogIkluZm9ybWF0aW9uIFZhbHVlIg0Kb3V0cHV0Og0KICBodG1sX25vdGVib29rOg0KICAgIGNzczogZGlzY3JldGl6YXRpb24uY3NzDQotLS0NCg0KIyBDbHVzdGVyDQoNCkNsdXN0ZXIgY2hvc2VuOiBgciBjbGNsY2xgIHdpdGggKGByIHN1bShteV9jbHVzdCA9PSBjbGNsY2wpYCByb3dzKQ0KDQojIFByZWxvYWQNCg0KIyBJbmZvcm1hdGlvbiBWYWx1ZQ0KDQojIyBQcmVwYXJlIGZyYW1lDQoNCkRpY3Rpb25hcnk6DQoNCiogbnVtZXJpYzogOTI3IGZlYXR1cmVzIChOdW1lcmljKQ0KKiBjYXRlZ29yaWNhbDogMjI3IGZlYXR1cmVzIChDYXRlZ29yaWNhbCkNCiogZGF0ZTogMTYxIGZlYXR1cmVzIChEYXRlKQ0KKiBOQV9mZWF0dXJlczogMTI4IGZlYXR1cmVzIChkX05BKQ0KKiBNZWFuX2ZlYXR1cmVzOiAxMjggZmVhdHVyZXMgKGRfTWVhbikNCiogTWluX2ZlYXR1cmVzOiAxMjggZmVhdHVyZXMgKGRfTWluKQ0KKiBNaW5NaW5fZmVhdHVyZXM6IDEgZmVhdHVyZXMgKGRfTWluTWluKQ0KKiBNYXhfZmVhdHVyZXM6IDEyOCBmZWF0dXJlcyAoZF9NYXgpDQoqIE1heE1heF9mZWF0dXJlczogMSBmZWF0dXJlcyAoZF9NYXhNYXgpDQoqIFRpbWUwX2ZlYXR1cmVzOiAxMjggZmVhdHVyZXMgKGRfVGltZTApDQoqIEZpcnN0TGFzdF9mZWF0dXJlczogMiBmZWF0dXJlcyAoZF9GaXJzdCwgZF9MYXN0KQ0KKiBUaW1pbmdfZmVhdHVyZXM6IDEyOCBmZWF0dXJlcyAoZF9UaW1pbmcpDQoqIFRpbWVUb0V4aXRTdGF0aW9uX2ZlYXR1cmVzOiAxMjggZmVhdHVyZXMgKGRfVHRvRV9TKQ0KKiBUaW1lVG9FeGl0UHJvZHVjdGlvbl9mZWF0dXJlczogMSBmZWF0dXJlcyAoZF9UdG9FX1ApDQoNCkZvcm11bGFzOg0KDQoqIE11dHVhbCBJbmZvcm1hdGlvbiA9IEkoWCwgWSkgPSBIKFgsIFkpIC0gSChYIHwgWSkgLSBIKFkgfCBYKSwgdW5kZXJzdGFuZCB1bi1zaWRlZA0KKiBDb25kaXRpb25hbCBNdXR1YWwgSW5mb3JtYXRpb24gPSBJKFgsIFkgfCBaKSA9IEgoWiB8IFgpICsgSChYKSArIEgoWiB8IFkpICsgSChZKSAtIEgoWiB8IFgsIFkpIC0gSChYLCBZKSAtIEgoWikgPSBJKFgsIFkpICsgSChaIHwgWCkgLSBIKFogfCBZKSAtIEgoWiB8IFgsIFkpIC0gSChaKSwgd2l0aCBndWFyYW50ZWUgb2YgSShYLCBZIHwgWikgPiAwIGFuZCBiZWluZyBvbmUtc2lkZWQNCg0KTGVhayByZWZlcmVuY2U6IElWID0gMi44NDMzOTkgKHN1cGVyIGxhcmdlISEhKSAtIDMgc3BsaXRzOiBbLUluZiwgLTEuNSksIFstMS41LCAxNjQpLCBbMTY0LCArSW5mXQ0KDQpJViBzY2FsZToNCg0KKiBvdmVyIDAuNSA9IHN1c3BpY2lvdXMgcHJlZGljdG9yIGJ1dCBwb3NzaWJsZSAobGl0ZXJhbGx5IGRvbWluYXRlcyBldmVyeXRoaW5nIGVsc2UpDQoqIDAuMy0wLjUgPSBzdHJvbmcgcHJlZGljdG9yDQoqIDAuMS0wLjMgPSBhdmVyYWdlIHByZWRpY3Rvcg0KKiAwLjAyLTAuMSA9IHdlYWsgcHJlZGljdG9yDQoqIHVuZGVyIDAuMDIgPSBzbyB3ZWFrIHlvdSBtb3N0bHkgY2Fubm90IGRvIGFueXRoaW5nIHdpdGggdW5sZXNzIHlvdSB0cmFuc2Zvcm0gdGhlbQ0KDQpDbHVzdGVyIGNob3NlbjogYHIgY2xjbGNsYCB3aXRoIChgciBsZW5ndGgobXlfY2x1c3QgPT0gY2xjbGNsKWAgcm93cykNCg0KKiBQb3NpdGl2ZSBjb3VudDogYHIgc3VtKHRhcmdldFtteV9jbHVzdCA9PSBjbGNsY2xdKWAgKGByIHNwcmludGYoIiUwNy40ZiIsIHN1bSh0YXJnZXRbbXlfY2x1c3QgPT0gY2xjbGNsXSkgLyA2OC43OSlgICUpDQoqIE5lZ2F0aXZlIGNvdW50OiBgciBzdW0oIXRhcmdldFtteV9jbHVzdCA9PSBjbGNsY2xdKWAgKGByIHNwcmludGYoIiUwNy40ZiIsIHN1bSghdGFyZ2V0W215X2NsdXN0ID09IGNsY2xjbF0pIC8gMTE3NjguNjgpYCAlKQ0KDQpgYGB7ciwgZWNobyA9IEZBTFNFfQ0KDQpkYXRhdGFibGUoYWxsX2ZyYW1lLA0KICAgICAgICAgIGZpbHRlciA9ICJ0b3AiLA0KICAgICAgICAgIGNsYXNzID0gImNlbGwtYm9yZGVyIHN0cmlwZSIsDQogICAgICAgICAgcGx1Z2lucyA9ICJuYXR1cmFsIiwNCiAgICAgICAgICBleHRlbnNpb25zID0gYygiQXV0b0ZpbGwiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICMiQnV0dG9ucyIsDQogICAgICAgICAgICAgICAgICAgICAgICAgIkNvbFJlb3JkZXIiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICJLZXlUYWJsZSIsDQogICAgICAgICAgICAgICAgICAgICAgICAgIlJlc3BvbnNpdmUiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICJSb3dSZW9yZGVyIiksDQogICAgICAgICAgb3B0aW9ucyA9IGxpc3Qoc3R5bGUgPSAiYm9vdHN0cmFwIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICBwYWdlTGVuZ3RoID0gMjAsDQogICAgICAgICAgICAgICAgICAgICAgICAgbGVuZ3RoTWVudSA9IGMoNSwgMTAsIDE1LCAyMCwgMjUsIDUwLCAxMDAsIDI1MCwgNTAwLCAxMDAwLCAyNTAwKSwNCiAgICAgICAgICAgICAgICAgICAgICAgICBvcmRlciA9IGxpc3QobGlzdCg3LCAiZGVzYyIpKSwNCiAgICAgICAgICAgICAgICAgICAgICAgICBhdXRvZmlsbCA9IFRSVUUsDQogICAgICAgICAgICAgICAgICAgICAgICAgI2RvbSA9ICJCZnJ0aXAiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICNidXR0b25zID0gYygiY29weSIsICJjc3YiLCAiZXhjZWwiLCAicGRmIiwgInByaW50IiksDQogICAgICAgICAgICAgICAgICAgICAgICAgY29sUmVvcmRlciA9IFRSVUUsDQogICAgICAgICAgICAgICAgICAgICAgICAga2V5cyA9IFRSVUUsDQogICAgICAgICAgICAgICAgICAgICAgICAgcm93UmVvcmRlciA9IFRSVUUsDQogICAgICAgICAgICAgICAgICAgICAgICAgc2VhcmNoSGlnaGxpZ2h0ID0gVFJVRSwNCiAgICAgICAgICAgICAgICAgICAgICAgICBzZWFyY2ggPSBsaXN0KHJlZ2V4ID0gVFJVRSwgY2FzZUluc2Vuc2l0aXZlID0gRkFMU0UpKQ0KICAgICAgICAgICkgJT4lIGZvcm1hdFN0eWxlKCdJRycsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQgPSBzdHlsZUNvbG9yQmFyKHJhbmdlKGFsbF9mcmFtZSRJRywgbmEucm0gPSBUUlVFLCBmaW5pdGUgPSBUUlVFKSwgJ2xpZ2h0Z3JlZW4nKSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZFNpemUgPSAnMTAwJSA5MCUnLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kUmVwZWF0ID0gJ25vLXJlcGVhdCcsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmRQb3NpdGlvbiA9ICdjZW50ZXInKSAlPiUNCiAgICAgICAgICAgICAgICBmb3JtYXRTdHlsZSgnSVYnLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kID0gc3R5bGVDb2xvckJhcihyYW5nZShhbGxfZnJhbWUkSVYsIG5hLnJtID0gVFJVRSwgZmluaXRlID0gVFJVRSksICdwaW5rJyksDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmRTaXplID0gJzEwMCUgOTAlJywNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZFJlcGVhdCA9ICduby1yZXBlYXQnLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kUG9zaXRpb24gPSAnY2VudGVyJykgJT4lDQogICAgICAgICAgICAgICAgZm9ybWF0U3R5bGUoJ1NwbGl0cycsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQgPSBzdHlsZUNvbG9yQmFyKHJhbmdlKGFsbF9mcmFtZSRTcGxpdHMsIG5hLnJtID0gVFJVRSwgZmluaXRlID0gVFJVRSksICd5ZWxsb3cnKSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZFNpemUgPSAnMTAwJSA5MCUnLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kUmVwZWF0ID0gJ25vLXJlcGVhdCcsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmRQb3NpdGlvbiA9ICdjZW50ZXInKSAlPiUNCiAgICAgICAgICAgICAgICBmb3JtYXRTdHlsZSgnTm90TWlzc2luZycsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQgPSBzdHlsZUNvbG9yQmFyKGMoMCwgMSksICdsaWdodGdyZXknKSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZFNpemUgPSAnMTAwJSA5MCUnLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kUmVwZWF0ID0gJ25vLXJlcGVhdCcsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmRQb3NpdGlvbiA9ICdjZW50ZXInKSAlPiUNCiAgICAgICAgICAgICAgICBmb3JtYXRTdHlsZSgnTGV2ZWxzJywNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZCA9IHN0eWxlQ29sb3JCYXIocmFuZ2UoYWxsX2ZyYW1lJExldmVscywgbmEucm0gPSBUUlVFLCBmaW5pdGUgPSBUUlVFKSwgJ2xpZ2h0Z3JleScpLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kU2l6ZSA9ICcxMDAlIDkwJScsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmRSZXBlYXQgPSAnbm8tcmVwZWF0JywNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZFBvc2l0aW9uID0gJ2NlbnRlcicpICU+JQ0KICAgICAgICAgICAgICAgIGZvcm1hdFJvdW5kKGNvbHVtbnMgPSBjKCJJRyIpLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpZ2l0cyA9IDgpICU+JQ0KICAgICAgICAgICAgICAgIGZvcm1hdFJvdW5kKGNvbHVtbnMgPSBjKCJJViIpLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpZ2l0cyA9IDgpICU+JQ0KICAgICAgICAgICAgICAgIGZvcm1hdFBlcmNlbnRhZ2UoY29sdW1ucyA9IGMoIk5vdE1pc3NpbmciKSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpZ2l0cyA9IDQpDQpgYGANCg0KIyBMb29rIGF0IHRoZSBzcGxpdHMNCg0KVGFibGUgb2YgYHIgbnJvdyhtYXNzX2RhdGEpYCBzYXZlZCByb3dzIChsb3dlc3QgYWJzb2x1dGUgaW5mbGF0aW9uIHZhbHVlID0gYHIgbWluKGFicyhtYXNzX2RhdGEkaW5mbGF0aW9uKSlgICk6DQoNCiogdmFyaWFibGUgPSBWYXJpYWJsZQ0KKiBjbGFzcyA9IFNwbGl0DQoqIHBjdF9iaW4gPSBQZXJjZW50YWdlIG9mIHNhbXBsZXMgaW5jbHVkZWQgaW4gdGhlIHNwbGl0DQoqIGdvb2QgPSBDb3VudCBvZiBub24tZGVmZWN0IGluIHRoZSBzcGxpdA0KKiBiYWQgPSBDb3VudCBvZiBkZWZlY3RzIGluIHRoZSBzcGxpdA0KKiBiYWRfcmF0ZSA9IFJlbGF0aXZlIGNvdW50IG9mIGRlZmVjdHMgaW4gdGhlIHNwbGl0IHZzIHBvcHVsYXRpb24NCiogaW5mbGF0aW9uID0gSW5mbGF0aW9uIHJhdGUgb2Ygc2FtcGxlIGNvdW50IG9uIHJhdGVzICh0aHJlc2hvbGRlZCkNCiogcGN0X2dvb2QgPSBQZXJjZW50YWdlIG9mIG5vbi1kZWZlY3QgaW4gdGhlIHNwbGl0DQoqIHBjdF9iYWQgPSBQZXJjZW50YWdlIG9mIGRlZmVjdCBpbiB0aGUgc3BsaXQNCiogb2RkcyA9IE9kZHMgcmF0aW8gb2YgdGhlIHNwbGl0DQoqIHdvZSA9IFdlaWdodCBvZiBFdmlkZW5jZSBvZiB0aGUgc3BsaXQNCiogbWl2ID0gSW5mb3JtYXRpb24gVmFsdWUgb2YgdGhlIHNwbGl0DQoNCmBgYHtyLCBlY2hvID0gRkFMU0V9DQoNCmRhdGF0YWJsZShtYXNzX2RhdGEsDQogICAgICAgICAgZmlsdGVyID0gInRvcCIsDQogICAgICAgICAgY2xhc3MgPSAiY2VsbC1ib3JkZXIgc3RyaXBlIiwNCiAgICAgICAgICBwbHVnaW5zID0gIm5hdHVyYWwiLA0KICAgICAgICAgIGV4dGVuc2lvbnMgPSBjKCJBdXRvRmlsbCIsDQogICAgICAgICAgICAgICAgICAgICAgICAgIyJCdXR0b25zIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAiQ29sUmVvcmRlciIsDQogICAgICAgICAgICAgICAgICAgICAgICAgIktleVRhYmxlIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAiUmVzcG9uc2l2ZSIsDQogICAgICAgICAgICAgICAgICAgICAgICAgIlJvd1Jlb3JkZXIiKSwNCiAgICAgICAgICBvcHRpb25zID0gbGlzdChzdHlsZSA9ICJib290c3RyYXAiLA0KICAgICAgICAgICAgICAgICAgICAgICAgIHBhZ2VMZW5ndGggPSAyMCwNCiAgICAgICAgICAgICAgICAgICAgICAgICBsZW5ndGhNZW51ID0gYyg1LCAxMCwgMTUsIDIwLCAyNSwgNTAsIDEwMCwgMjUwLCA1MDAsIDEwMDAsIDI1MDApLA0KICAgICAgICAgICAgICAgICAgICAgICAgIG9yZGVyID0gbGlzdChsaXN0KDEzLCAiZGVzYyIpKSwNCiAgICAgICAgICAgICAgICAgICAgICAgICBhdXRvZmlsbCA9IFRSVUUsDQogICAgICAgICAgICAgICAgICAgICAgICAgI2RvbSA9ICJCZnJ0aXAiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICNidXR0b25zID0gYygiY29weSIsICJjc3YiLCAiZXhjZWwiLCAicGRmIiwgInByaW50IiksDQogICAgICAgICAgICAgICAgICAgICAgICAgY29sUmVvcmRlciA9IFRSVUUsDQogICAgICAgICAgICAgICAgICAgICAgICAga2V5cyA9IFRSVUUsDQogICAgICAgICAgICAgICAgICAgICAgICAgcm93UmVvcmRlciA9IFRSVUUsDQogICAgICAgICAgICAgICAgICAgICAgICAgc2VhcmNoSGlnaGxpZ2h0ID0gVFJVRSwNCiAgICAgICAgICAgICAgICAgICAgICAgICBzZWFyY2ggPSBsaXN0KHJlZ2V4ID0gVFJVRSwgY2FzZUluc2Vuc2l0aXZlID0gRkFMU0UpKQ0KICAgICAgICAgICkgJT4lIGZvcm1hdFN0eWxlKCd3b2UnLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kID0gc3R5bGVDb2xvckJhcihyYW5nZShtYXNzX2RhdGEkd29lLCBuYS5ybSA9IFRSVUUsIGZpbml0ZSA9IFRSVUUpLCAnbGlnaHRncmVlbicpLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kU2l6ZSA9ICcxMDAlIDkwJScsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmRSZXBlYXQgPSAnbm8tcmVwZWF0JywNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZFBvc2l0aW9uID0gJ2NlbnRlcicpICU+JQ0KICAgICAgICAgICAgICAgIGZvcm1hdFN0eWxlKCdtaXYnLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kID0gc3R5bGVDb2xvckJhcihyYW5nZShtYXNzX2RhdGEkbWl2LCBuYS5ybSA9IFRSVUUsIGZpbml0ZSA9IFRSVUUpLCAncGluaycpLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kU2l6ZSA9ICcxMDAlIDkwJScsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmRSZXBlYXQgPSAnbm8tcmVwZWF0JywNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZFBvc2l0aW9uID0gJ2NlbnRlcicpICU+JQ0KICAgICAgICAgICAgICAgIGZvcm1hdFN0eWxlKCdvZGRzJywNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZCA9IHN0eWxlQ29sb3JCYXIocmFuZ2UobWFzc19kYXRhJG9kZHMsIG5hLnJtID0gVFJVRSwgZmluaXRlID0gVFJVRSksICdsaWdodGJsdWUnKSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZFNpemUgPSAnMTAwJSA5MCUnLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kUmVwZWF0ID0gJ25vLXJlcGVhdCcsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmRQb3NpdGlvbiA9ICdjZW50ZXInKSAlPiUNCiAgICAgICAgICAgICAgICBmb3JtYXRTdHlsZSgnZ29vZCcsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQgPSBzdHlsZUNvbG9yQmFyKHJhbmdlKG1hc3NfZGF0YSRnb29kLCBuYS5ybSA9IFRSVUUsIGZpbml0ZSA9IFRSVUUpLCAneWVsbG93JyksDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmRTaXplID0gJzEwMCUgOTAlJywNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZFJlcGVhdCA9ICduby1yZXBlYXQnLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kUG9zaXRpb24gPSAnY2VudGVyJykgJT4lDQogICAgICAgICAgICAgICAgZm9ybWF0U3R5bGUoJ2JhZCcsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQgPSBzdHlsZUNvbG9yQmFyKHJhbmdlKG1hc3NfZGF0YSRiYWQsIG5hLnJtID0gVFJVRSwgZmluaXRlID0gVFJVRSksICdvcmFuZ2UnKSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZFNpemUgPSAnMTAwJSA5MCUnLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kUmVwZWF0ID0gJ25vLXJlcGVhdCcsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmRQb3NpdGlvbiA9ICdjZW50ZXInKSAlPiUNCiAgICAgICAgICAgICAgICBmb3JtYXRTdHlsZSgncGN0X2dvb2QnLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kID0gc3R5bGVDb2xvckJhcihjKDAsIDEpLCAneWVsbG93JyksDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmRTaXplID0gJzEwMCUgOTAlJywNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZFJlcGVhdCA9ICduby1yZXBlYXQnLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kUG9zaXRpb24gPSAnY2VudGVyJykgJT4lDQogICAgICAgICAgICAgICAgZm9ybWF0U3R5bGUoJ3BjdF9iYWQnLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kID0gc3R5bGVDb2xvckJhcihjKDAsIDEpLCAnb3JhbmdlJyksDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmRTaXplID0gJzEwMCUgOTAlJywNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZFJlcGVhdCA9ICduby1yZXBlYXQnLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kUG9zaXRpb24gPSAnY2VudGVyJykgJT4lDQogICAgICAgICAgICAgICAgZm9ybWF0U3R5bGUoJ2JhZF9yYXRlJywNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZCA9IHN0eWxlQ29sb3JCYXIoYygwLCAxKSwgJ29yYW5nZScpLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kU2l6ZSA9ICcxMDAlIDkwJScsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmRSZXBlYXQgPSAnbm8tcmVwZWF0JywNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZFBvc2l0aW9uID0gJ2NlbnRlcicpICU+JQ0KICAgICAgICAgICAgICAgIGZvcm1hdFN0eWxlKCdwY3RfYmluJywNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZCA9IHN0eWxlQ29sb3JCYXIoYygwLCAxKSwgJ2xpZ2h0Z3JleScpLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kU2l6ZSA9ICcxMDAlIDkwJScsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmRSZXBlYXQgPSAnbm8tcmVwZWF0JywNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZFBvc2l0aW9uID0gJ2NlbnRlcicpICU+JQ0KICAgICAgICAgICAgICAgIGZvcm1hdFN0eWxlKCdpbmZsYXRpb24nLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kID0gc3R5bGVDb2xvckJhcihyYW5nZShtYXNzX2RhdGEkaW5mbGF0aW9uLCBuYS5ybSA9IFRSVUUsIGZpbml0ZSA9IFRSVUUpLCAnbGlnaHRncmV5JyksDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmRTaXplID0gJzEwMCUgOTAlJywNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZFJlcGVhdCA9ICduby1yZXBlYXQnLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kUG9zaXRpb24gPSAnY2VudGVyJykgJT4lDQogICAgICAgICAgICAgICAgZm9ybWF0Um91bmQoY29sdW1ucyA9IGMoIndvZSIpLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpZ2l0cyA9IDYpICU+JQ0KICAgICAgICAgICAgICAgIGZvcm1hdFJvdW5kKGNvbHVtbnMgPSBjKCJtaXYiKSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaWdpdHMgPSA2KSAlPiUNCiAgICAgICAgICAgICAgICBmb3JtYXRSb3VuZChjb2x1bW5zID0gYygib2RkcyIpLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpZ2l0cyA9IDYpICU+JQ0KICAgICAgICAgICAgICAgIGZvcm1hdFJvdW5kKGNvbHVtbnMgPSBjKCJpbmZsYXRpb24iKSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaWdpdHMgPSA2KSAlPiUNCiAgICAgICAgICAgICAgICBmb3JtYXRQZXJjZW50YWdlKGNvbHVtbnMgPSBjKCJwY3RfYmluIiksDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaWdpdHMgPSA0KSAlPiUNCiAgICAgICAgICAgICAgICBmb3JtYXRQZXJjZW50YWdlKGNvbHVtbnMgPSBjKCJiYWRfcmF0ZSIpLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlnaXRzID0gNCkgJT4lDQogICAgICAgICAgICAgICAgZm9ybWF0UGVyY2VudGFnZShjb2x1bW5zID0gYygicGN0X2dvb2QiKSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpZ2l0cyA9IDQpICU+JQ0KICAgICAgICAgICAgICAgIGZvcm1hdFBlcmNlbnRhZ2UoY29sdW1ucyA9IGMoInBjdF9iYWQiKSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpZ2l0cyA9IDQpDQoNCg0KYGBgDQoNCiMjIENoYXJhY3RlcnN0aWMgUGxvdHMgb2YgRmVhdHVyZXMgKFVuZmFjZXR0ZWQpDQoNCmBgYHtyLCBlY2hvPUZBTFNFLCBmaWcuaGVpZ2h0PTcsIGZpZy53aWR0aD0xOH0NCmdyaWQuYXJyYW5nZShwbG90MDEsIHBsb3QwMiwgbmNvbCA9IDIpDQpncmlkLmFycmFuZ2UocGxvdDAzLCBwbG90MDQsIG5jb2wgPSAyKQ0KZ3JpZC5hcnJhbmdlKHBsb3QwNSwgcGxvdDA2LCBuY29sID0gMikNCmBgYA0KDQojIyBDaGFyYWN0ZXJzdGljIFBsb3RzIG9mIEZlYXR1cmVzIChGYWNldHRlZCkNCg0KYGBge3IsIGVjaG8gPSBGQUxTRSwgZmlnLmhlaWdodD03LCBmaWcud2lkdGg9MTh9DQpwcmludChwbG90ZmFjZXQwMSkNCnByaW50KHBsb3RmYWNldDAyKQ0KcHJpbnQocGxvdGZhY2V0MDMpDQpwcmludChwbG90ZmFjZXQwNCkNCnByaW50KHBsb3RmYWNldDA1KQ0KcHJpbnQocGxvdGZhY2V0MDYpDQpgYGANCg0KIyMgQ2hhcmFjdGVyaXN0aWMgUGxvdHMgb2YgU3BsaXRzIChVbmZhY2V0dGVkKQ0KDQpgYGB7ciwgZWNobyA9IEZBTFNFLCBmaWcuaGVpZ2h0PTcsIGZpZy53aWR0aD0xOH0NCmdyaWQuYXJyYW5nZShwbG90MDcsIHBsb3QwOCwgbmNvbCA9IDIpDQpncmlkLmFycmFuZ2UocGxvdDA5LCBwbG90MTAsIG5jb2wgPSAyKQ0KZ3JpZC5hcnJhbmdlKHBsb3QxMSwgcGxvdDEyLCBuY29sID0gMikNCmBgYA0KDQojIyBDaGFyYWN0ZXJpc3RpYyBQbG90cyBvZiBTcGxpdHMgKEZhY2V0dGVkKQ0KDQpgYGB7ciwgZWNobyA9IEZBTFNFLCBmaWcuaGVpZ2h0PTcsIGZpZy53aWR0aD0xOH0NCnByaW50KHBsb3RmYWNldDA3KQ0KcHJpbnQocGxvdGZhY2V0MDgpDQpwcmludChwbG90ZmFjZXQwOSkNCnByaW50KHBsb3RmYWNldDEwKQ0KcHJpbnQocGxvdGZhY2V0MTEpDQpwcmludChwbG90ZmFjZXQxMikNCmBgYA0KDQo=